With the development of information technologies, and especially popularization of the Internet, various types of data volumes grow rapidly, among which video data accounts for a main part. A storage system having a large capacity and high performance is urgently required, so that the data is effectively stored and rapidly accessed.
As a mature technology, a conventional hard disk drive has low costs and a large capacity. However, the hard disk drive has a performance bottleneck and relatively high power consumption, and is gradually replaced by a solid state disk. A solid state disk stores data by using a non-volatile semiconductor memory. Currently, a non-volatile memory such as a flash memory is used, which has advantages in performance, power consumption, and reliability. However, due to high costs, the flash memory is usually used as a buffer of the hard disk drive. With continuous improvements of the semiconductor process, costs of the flash memory are steadily decreased. Therefore, the flash memory would take place of the hard disk drive sooner or later.
A common form of the solid state disk (SSD) is similar to the hard disk drive. For example, both the solid state disk and the hard disk drive use an SATA (Serial Advanced Technology Attachment) interface or an SAS (Serial Attached Small Computer System Interface) interface, have a size of 2.5 or 3.5 inches, and may be connected to a computer system by using an SATA or SAS cable, or may be directly inserted into a hard disk slot on a server.
The solid state disk usually includes a controller, a buffer, and a flash memory. The controller is connected to the computer system by using the SAS/SATA interface. The buffer is configured to temporarily store data to be written into the flash memory or data read from the flash memory, or may be used as a memory of the controller to store code and data required for running the controller (where the controller has a CPU). As a storage medium, the flash memory is configured to store all data of the solid state disk and can accept a read/write access of the controller. The solid state disk of this form has a large volume, and a bandwidth of the SAS/SATA interface usually does not exceed 6 Gbps, resulting in low performance.
Another common form of the solid state disk is a solid state disk using a PCIe (Peripheral Component Interconnect express) plug-in card. A difference between the solid state disk of this form and the solid state disk using the SATA or SAS interface is that interfaces between the solid state disks and a computer system are different. However, inner structures thereof are basically the same. A signal rate of a PCIe interface may reach 8 Gbps and a bit width may be 16 bits. Therefore, a bandwidth may reach 128 Gbps and a delay is low. The solid state disk of this form still has a relatively large volume, and a computer system has relatively few PCIe slots. Consequently, improvements in an installation density and a capacity are limited.
In the prior art, to resolve the problem of a small installation density and a small capacity, a solid state disk in a memory module form is further used, so that in a server having a same volume, more solid state disks can be installed, thereby increasing the storage capacity.
In the prior art, a flash memory stripe in a memory module form is used to resolve the problem of the installation density and capacity of the solid state disk. Because the flash memory stripe is directly installed in a memory module slot, the installation is convenient. In addition, space is saved and a storage density is high. However, in the prior art, a CPU directly accesses a flash memory, that is, the CPU directly sends a target address, a command, and the like by using a signal cable within an access period, a storage controller forwards the signal to a storage module, and the storage module receives the signal and performs a corresponding operation. In such an access manner, the storage module in the storage apparatus is directly mapped to an addressing space of the CPU. Therefore, a storage capacity of the storage apparatus is limited by an addressing space range of the CPU. For example, if a 300 GB flash memory is applied to a CPU whose addressing range is only 4 GB, actual use of the 300 GB flash memory does not exceed 4 GB. For another example, if an addressing range of a CPU is 1 TB, a total capacity of a solid state disk cannot exceed 1 TB. This access manner limits a storage capacity of a device.